package com.ruoyi.userr.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.userr.domain.Likes;

/**
 * 作品点赞Service接口
 * 
 * @author lpt
 * @date 2025-08-13
 */
public interface ILikesService 
{
    /**
     * 查询作品点赞
     * 
     * @param id 作品点赞主键
     * @return 作品点赞
     */
    public Likes selectLikesById(Integer id);

    /**
     * 查询作品点赞列表
     * 
     * @param likes 作品点赞
     * @return 作品点赞集合
     */
    public List<Likes> selectLikesList(Likes likes);

    /**
     * 新增作品点赞
     * 
     * @param likes 作品点赞
     * @return 结果
     */
    public int insertLikes(Likes likes);

    /**
     * 修改作品点赞
     * 
     * @param likes 作品点赞
     * @return 结果
     */
    public int updateLikes(Likes likes);

    /**
     * 批量删除作品点赞
     * 
     * @param ids 需要删除的作品点赞主键集合
     * @return 结果
     */
    public int deleteLikesByIds(Integer[] ids);

    /**
     * 删除作品点赞信息
     * 
     * @param id 作品点赞主键
     * @return 结果
     */
    public int deleteLikesById(Integer id);

    /**
     * 获取指定作者收到的点赞列表（返回Map列表）
     */
    List<Map<String, Object>> getAuthorLikes(Long authorId);

    // 新增方法：获取点赞总数
    Integer getAuthorLikeCount(Long authorId);
}
